package com.qst.order.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.qst.order.domain.ReturnApply;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.data.domain.Page;

@Mapper
public interface ReturnApplyMapper extends BaseMapper<ReturnApply> {
    /**
     * 分页查询退货申请列表（支持筛选条件）
     * @param iPage 分页参数
     * @param keyword 搜索关键词（订单号/用户名）
     * @param status 状态筛选
     * @param startDate 开始时间
     * @param endDate 结束时间
     * @return 分页结果
     */
    IPage<ReturnApply> selectRefundPage(
            IPage<ReturnApply> iPage,
            @Param("keyword") String keyword,
            @Param("status") Integer status,
            @Param("startDate") String startDate,
            @Param("endDate") String endDate
    );

    /**
     * 根据退货ID查询退货详情（包含基本信息）
     * @param returnId 退货申请ID
     * @return 退货申请详情
     */
    ReturnApply selectRefundById(@Param("returnId") Integer returnId);
}
